Skip to content

[#478] Base App migration — SDK restricted to Farcaster only#485

Merged
realproject7 merged 2 commits intomainfrom
task/478-base-app-migration
Mar 24, 2026
Merged

[#478] Base App migration — SDK restricted to Farcaster only#485
realproject7 merged 2 commits intomainfrom
task/478-base-app-migration

Conversation

@realproject7
Copy link
Copy Markdown
Owner

Summary

  • FarcasterMiniApp.tsx: sdk.actions.ready() now only fires when platform === 'farcaster' (uses usePlatformDetection hook)
  • ShareToFarcaster.tsx: Refactored to use usePlatformDetection instead of raw sdk.context check; only renders in Farcaster clients
  • SwapInterface.tsx: Native swap via sdk.actions.swapToken() now Farcaster-only; Base App and web users get Uniswap link

After Base App migration (April 9, 2026), Base App operates as standard web app — no mini-app SDK needed.

Fixes #478

Operator items (separate)

  • Register at base.dev and add base:app_id meta tag after registration

Test plan

  • Build passes (next build)
  • In Farcaster (Warpcast): splash dismisses, share button shows, native swap works
  • In Base App: standard web experience, Uniswap link for swap, no share button
  • In browser: same as Base App behavior

🤖 Generated with Claude Code

Base App migrates to standard web app (April 2026). SDK actions
(ready, composeCast, swapToken) now only fire in Farcaster clients.
Base App and web users get standard wallet + Uniswap experience.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Mar 24, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
plotlink Ignored Ignored Mar 24, 2026 9:29am

Request Review

Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Clean migration — SDK gated behind platform === 'farcaster' via the existing usePlatformDetection hook. Base App swap branch correctly removed from SwapInterface. ShareToFarcaster and FarcasterMiniApp both properly guarded. The hook still detects Base App (via clientFid) so if we ever need platform-specific Base App behavior again, the detection is still there. No issues.

Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: REQUEST CHANGES

Summary

The SDK gating changes look correct, but the PR leaves out the required Base App identification meta tag from the issue.

Findings

  • medium src/app/layout.tsx:31 still does not include the required other["base:app_id"] = "69c257e93c2c56b9bbd2f62a". Issue #478 calls that tag out as a concrete code change, and without it Base App cannot identify the app as registered.
    • File: src/app/layout.tsx:31
    • Suggestion: add the base:app_id entry to the metadata other field alongside the existing metadata extras.

Decision

Request changes because #478 is not complete without the base:app_id metadata tag.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: APPROVE

Summary

The rework keeps the SDK limited to Farcaster clients and now adds the required Base App metadata tag in layout. That closes the issue requirement I previously flagged.

Findings

  • None.

Decision

Approve because the base:app_id metadata is now present and the rest of the Base App migration changes remain consistent with #478.

@realproject7 realproject7 merged commit 7fdd692 into main Mar 24, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[#475] Base App migration — standard web app compatibility

2 participants